﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Sistema_Totem.Presentacion.Contrato.Proyectos;
using Sistema_Totem.Presentacion.Presentador.Proyectos;
using System.Web.SessionState;
using Sistema_Totem.Clases;

namespace Sistema_Totem.Vista.Proyectos
{
    public partial class ModificarProyectoGerente : System.Web.UI.Page, IContratoModificarProyectoGerente
    {
        #region Atributos

        private PresentadorModificarProyectoGerente _presentador;
        private int _idProyecto;

        #endregion

        #region Constructores

        public ModificarProyectoGerente()
        {
            _presentador = new PresentadorModificarProyectoGerente(this);
        }

        #endregion Constructor                

        #region Propiedades

        public HttpSessionState Sesion
        {
            get { return Session; }
        }

        public Label CodigoProyecto
        {
            get { return codigoProyecto; }
            set { codigoProyecto = value; }
        }

        public TextBox NombreProyecto
        {
            get { return nombreProyecto; }
            set { nombreProyecto = value; }
        }

        public Label NombreCliente
        {
            get { return nombreCliente; }
            set { nombreCliente = value; }
        }

        public DropDownList Clientes
        {
            get { return clientes; }
            set { clientes = value; }
        }

        public TextBox DescripcionProyecto
        {
            get { return descripcion; }
            set { descripcion = value; }
        }

        public ListBox InvolucradosSistema
        {
            get { return involucradosSistema; }
            set { involucradosSistema = value; }
        }

        public ListBox InvolucradosProyecto
        {
            get { return involucradosProyecto; }
            set { involucradosProyecto = value; }
        }

        public DropDownList PlantillasCU
        {
            get { return plantillasCU; }
            set { plantillasCU = value; }
        }

        public DropDownList PlantillasMinuta
        {
            get { return plantillasMinuta; }
            set { plantillasMinuta = value; }
        }

        public DropDownList PlantillasRequerimientos
        {
            get { return plantillasRequerimientos; }
            set { plantillasRequerimientos = value; }
        }

        public DropDownList PlantillasErs
        {
            get { return plantillasErs; }
            set { plantillasErs = value; }
        }

        public DropDownList PlantillasPropuestas
        {
            get { return plantillasPropuesta; }
            set { plantillasPropuesta = value; }
        }

        public DropDownList EstadoProyecto
        {
            get { return estadoProyecto; }
            set { estadoProyecto = value; }
        }

        public Label LabelNombreProyecto
        {
            get { return labelNombreProyecto; }
            set { labelNombreProyecto = value; }
        }

        public Label LabelArea
        {
            get { return labelArea; }
            set { labelArea = value; }
        }

        public Label LabelPlantillaCU
        {
            get { return labelPlantillaCU; }
            set { labelPlantillaCU = value; }
        }

        public Label LabelPlantillaMinuta
        {
            get { return labelPlantillaMinuta; }
            set { labelPlantillaMinuta = value; }
        }

        public Label LabelPlantillaReq
        {
            get { return labelPlantillaReq; }
            set { labelPlantillaReq = value; }
        }

        public Label LabelPlantillaErs
        {
            get { return labelPlantillaErs; }
            set { labelPlantillaErs = value; }
        }

        public Label LabelPlantillaPropuesta
        {
            get { return labelPlantillaPropuesta; }
            set { labelPlantillaPropuesta = value; }
        }

        public Label LabelFechaIni
        {
            get { return fechaInicio; }
            set { fechaInicio = value; }
        }

        public Label LabelFechaFin
        {
            get { return fechaFin; }
            set { fechaFin = value; }
        }

        public Calendar CalendarioFechaInicio
        {
            get { return calendarioFechaInicio; }
            set { calendarioFechaInicio = value; }
        }

        public Calendar CalendarioFechaFin
        {
            get { return calendarioFechaFin; }
            set { calendarioFechaFin = value; }
        }

        public TextBox AreaProyecto
        {
            get { return areaProyecto; }
            set { areaProyecto = value; }
        }

        public Label LabelEstadoProyecto
        {
            get { return labelEstado; }
            set { labelEstado = value; }
        }

        #endregion

        #region Métodos

        protected void Page_Load(object sender, EventArgs e)
        {
            if (Sesion["usuario"] == null || Sesion["proyecto"] == null || (Sesion["usuario"] as Usuario).TipoUsuario != "Gerente de proyecto")
                Response.Redirect("../Login/login.aspx");
            else
                if (!IsPostBack)                
                    _presentador.Pintar();            
        }

        protected void guardar_Click(object sender, EventArgs e)
        {
            _presentador.AgregarModificacionProyecto();
        }

        protected void cancelar_Click(object sender, EventArgs e)
        {
            Response.Redirect("../Proyectos/ListarModificarProyecto.aspx");
        }
        
        #endregion Métodos                
  
    }
}